package com.cv.framework.websocket.core.listener;

import com.cv.framework.websocket.core.message.JsonWebSocketMessage;
import org.springframework.web.socket.WebSocketSession;

/**
 * WebSocket 消息监听器接口
 *
 * @author Charles_XDXD
 */
public interface WebSocketMessageListener<T> {

    /**
     * 消息的处理
     *
     * @param session 会话
     * @param message 消息
     */
    void onMessage(WebSocketSession session, T message);

    /**
     * 发送消息的类型（这里指的是什么消息，而不是消息体的类型）
     *
     * @return 消息类型
     * @see JsonWebSocketMessage#getType()
     */
    String getType();

}
